package com.wuliu.system.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.wuliu.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.wuliu.common.core.domain.BaseEntity;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotBlank;

/**
 * 客户资料对象 bas_company
 * 
 * @author realue
 * @date 2023-10-24
 */
@ApiModel
public class BasCompany extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** $column.columnComment */
    @TableId(type = IdType.ASSIGN_UUID)
    @ApiModelProperty(value = "${comment}")
    private String id;

    /** 客户编号 */
    @NotBlank(message = "客户编号不能为空")
    @Excel(name = "客户编号")
    @ApiModelProperty(value = "客户编号")
    private String compNo;

    /** 客户名称 */
    @NotBlank(message = "客户名称不能为空")
    @Excel(name = "客户名称")
    @ApiModelProperty(value = "客户名称")
    private String compName;

    /** 电话 */
    @Excel(name = "电话")
    @ApiModelProperty(value = "电话")
    private String tel;

    /** 传真 */
    @Excel(name = "传真")
    @ApiModelProperty(value = "传真")
    private String fax;

    /** 联系人 */
    @Excel(name = "联系人")
    @ApiModelProperty(value = "联系人")
    private String contacts;

    /** 手机 */
    @Excel(name = "手机")
    @ApiModelProperty(value = "手机")
    private String mobile;

    /** 省 */
    @Excel(name = "省")
    @ApiModelProperty(value = "省")
    private String province;

    /** 市 */
    @Excel(name = "市")
    @ApiModelProperty(value = "市")
    private String city;

    /** 区 */
    @Excel(name = "区")
    @ApiModelProperty(value = "区")
    private String district;

    /** 详细地址 */
    @Excel(name = "详细地址")
    @ApiModelProperty(value = "详细地址")
    private String address;

    /** 所属网点 */
    @Min(value = 0,message = "所属站点不能为空")
    @Excel(name = "所属站点")
    @ApiModelProperty(value = "所属网点")
    private Long deptId;

    /** 网点名称 */
    @NotBlank(message = "所属站点名称不能为空")
    @Excel(name = "网点名称")
    @ApiModelProperty(value = "站点名称")
    private String deptName;

    /** 状态 1有效 0无效 */
    @Excel(name = "状态 1有效 0无效")
    @ApiModelProperty(value = "状态 1有效 0无效")
    private Integer status;

    /**  账套号 */
    @Excel(name = " 账套号")
    @ApiModelProperty(value = " 账套号")
    private String sysAccount;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }
    public void setCompNo(String compNo) 
    {
        this.compNo = compNo;
    }

    public String getCompNo() 
    {
        return compNo;
    }
    public void setCompName(String compName) 
    {
        this.compName = compName;
    }

    public String getCompName() 
    {
        return compName;
    }
    public void setTel(String tel) 
    {
        this.tel = tel;
    }

    public String getTel() 
    {
        return tel;
    }
    public void setFax(String fax) 
    {
        this.fax = fax;
    }

    public String getFax() 
    {
        return fax;
    }
    public void setContacts(String contacts) 
    {
        this.contacts = contacts;
    }

    public String getContacts() 
    {
        return contacts;
    }
    public void setMobile(String mobile) 
    {
        this.mobile = mobile;
    }

    public String getMobile() 
    {
        return mobile;
    }
    public void setProvince(String province) 
    {
        this.province = province;
    }

    public String getProvince() 
    {
        return province;
    }
    public void setCity(String city) 
    {
        this.city = city;
    }

    public String getCity() 
    {
        return city;
    }
    public void setDistrict(String district) 
    {
        this.district = district;
    }

    public String getDistrict() 
    {
        return district;
    }
    public void setAddress(String address) 
    {
        this.address = address;
    }

    public String getAddress() 
    {
        return address;
    }
    public void setDeptId(Long deptId) 
    {
        this.deptId = deptId;
    }

    public Long getDeptId() 
    {
        return deptId;
    }
    public void setDeptName(String deptName) 
    {
        this.deptName = deptName;
    }

    public String getDeptName() 
    {
        return deptName;
    }
    public void setStatus(Integer status) 
    {
        this.status = status;
    }

    public Integer getStatus() 
    {
        return status;
    }
    public void setSysAccount(String sysAccount) 
    {
        this.sysAccount = sysAccount;
    }

    public String getSysAccount() 
    {
        return sysAccount;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("compNo", getCompNo())
            .append("compName", getCompName())
            .append("tel", getTel())
            .append("fax", getFax())
            .append("contacts", getContacts())
            .append("mobile", getMobile())
            .append("province", getProvince())
            .append("city", getCity())
            .append("district", getDistrict())
            .append("address", getAddress())
            .append("deptId", getDeptId())
            .append("deptName", getDeptName())
            .append("status", getStatus())
            .append("createBy", getCreateBy())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("sysAccount", getSysAccount())
            .toString();
    }
}
